<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
	<title>Cluster update settings API | ElasticSearch 7.7 权威指南中文版</title>
	<meta name="keywords" content="ElasticSearch 权威指南中文版, elasticsearch 7, es7, 实时数据分析，实时数据检索" />
    <meta name="description" content="ElasticSearch 权威指南中文版, elasticsearch 7, es7, 实时数据分析，实时数据检索" />
    <!-- Give IE8 a fighting chance -->
    <!--[if lt IE 9]>
    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
	<link rel="stylesheet" type="text/css" href="../static/styles.css" />
	<script>
	var _link = 'cluster-update-settings.html';
    </script>
</head>
<body>
<div class="main-container">
    <section id="content">
        <div class="content-wrapper">
            <section id="guide" lang="zh_cn">
                <div class="container">
                    <div class="row">
                        <div class="col-xs-12 col-sm-8 col-md-8 guide-section">
                            <div style="color:gray; word-break: break-all; font-size:12px;">原英文版地址: <a href="https://www.elastic.co/guide/en/elasticsearch/reference/7.7/cluster-update-settings.html" rel="nofollow" target="_blank">https://www.elastic.co/guide/en/elasticsearch/reference/7.7/cluster-update-settings.html</a>, 原文档版权归 www.elastic.co 所有<br/>本地英文版地址: <a href="../en/cluster-update-settings.html" rel="nofollow" target="_blank">../en/cluster-update-settings.html</a></div>
                        <!-- start body -->
                  <div class="page_header">
<strong>重要</strong>: 此版本不会发布额外的bug修复或文档更新。最新信息请参考 <a href="https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html" rel="nofollow">当前版本文档</a>。
</div>
<div id="content">
<div class="breadcrumbs">
<span class="breadcrumb-link"><a href="index.html">Elasticsearch Guide [7.7]</a></span>
»
<span class="breadcrumb-link"><a href="rest-apis.html">REST APIs</a></span>
»
<span class="breadcrumb-link"><a href="cluster.html">Cluster APIs</a></span>
»
<span class="breadcrumb-node">Cluster update settings API</span>
</div>
<div class="navheader">
<span class="prev">
<a href="cluster-stats.html">« Cluster stats API</a>
</span>
<span class="next">
<a href="cluster-nodes-usage.html">Nodes feature usage API »</a>
</span>
</div>
<div class="section">
<div class="titlepage"><div><div>
<h2 class="title">
<a id="cluster-update-settings"></a>Cluster update settings API<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/cluster/update-settings.asciidoc">edit</a>
</h2>
</div></div></div>

<p>Updates cluster-wide settings.</p>
<div class="section">
<div class="titlepage"><div><div>
<h3 class="title">
<a id="cluster-update-settings-api-request"></a>Request<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/cluster/update-settings.asciidoc">edit</a>
</h3>
</div></div></div>
<p><code class="literal">PUT /_cluster/settings</code></p>
</div>

<div class="section">
<div class="titlepage"><div><div>
<h3 class="title">
<a id="cluster-update-settings-api-desc"></a>Description<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/cluster/update-settings.asciidoc">edit</a>
</h3>
</div></div></div>
<p>With specifications in the request body, this API call can update cluster
settings. Updates to settings can be persistent, meaning they apply across
restarts, or transient, where they don’t survive a full cluster restart.</p>
<p>You can reset persistent or transient settings by assigning a <code class="literal">null</code> value. If a
transient setting is reset, the first one of these values that is defined is
applied:</p>
<div class="ulist itemizedlist">
<ul class="itemizedlist">
<li class="listitem">
the persistent setting
</li>
<li class="listitem">
the setting in the configuration file
</li>
<li class="listitem">
the default value.
</li>
</ul>
</div>
<p>The order of precedence for cluster settings is:</p>
<div class="olist orderedlist">
<ol class="orderedlist">
<li class="listitem">
transient cluster settings
</li>
<li class="listitem">
persistent cluster settings
</li>
<li class="listitem">
settings in the <code class="literal">elasticsearch.yml</code> configuration file.
</li>
</ol>
</div>
<p>It’s best to set all cluster-wide settings with the <code class="literal">settings</code> API and use the
<code class="literal">elasticsearch.yml</code> file only for local configurations. This way you can be sure that
the setting is the same on all nodes. If, on the other hand, you define different
settings on different nodes by accident using the configuration file, it is very
difficult to notice these discrepancies.</p>
</div>

<div class="section">
<div class="titlepage"><div><div>
<h3 class="title">
<a id="cluster-update-settings-api-query-params"></a>Query parameters<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/cluster/update-settings.asciidoc">edit</a>
</h3>
</div></div></div>
<div class="variablelist">
<dl class="variablelist">
<dt>
<span class="term">
<code class="literal">flat_settings</code>
</span>
</dt>
<dd>
(Optional, boolean) If <code class="literal">true</code>, returns settings in flat format. Defaults to
<code class="literal">false</code>.
</dd>
<dt>
<span class="term">
<code class="literal">include_defaults</code>
</span>
</dt>
<dd>
(Optional, boolean) If <code class="literal">true</code>, returns all default cluster settings.
Defaults to <code class="literal">false</code>.
</dd>
<dt>
<span class="term">
<code class="literal">master_timeout</code>
</span>
</dt>
<dd>
(Optional, <a class="xref" href="common-options.html#time-units" title="Time units">time units</a>) Specifies the period of time to wait for
a connection to the master node. If no response is received before the timeout
expires, the request fails and returns an error. Defaults to <code class="literal">30s</code>.
</dd>
<dt>
<span class="term">
<code class="literal">timeout</code>
</span>
</dt>
<dd>
(Optional, <a class="xref" href="common-options.html#time-units" title="Time units">time units</a>) Specifies the period of time to wait for
a response. If no response is received before the timeout expires, the request
fails and returns an error. Defaults to <code class="literal">30s</code>.
</dd>
</dl>
</div>
</div>

<div class="section">
<div class="titlepage"><div><div>
<h3 class="title">
<a id="cluster-update-settings-api-example"></a>Examples<a class="edit_me edit_me_private" rel="nofollow" title="Editing on GitHub is available to Elastic" href="https://github.com/elastic/elasticsearch/edit/7.7/docs/reference/cluster/update-settings.asciidoc">edit</a>
</h3>
</div></div></div>
<p>An example of a persistent update:</p>
<div class="pre_wrapper lang-console">
<pre class="programlisting prettyprint lang-console">PUT /_cluster/settings
{
    "persistent" : {
        "indices.recovery.max_bytes_per_sec" : "50mb"
    }
}</pre>
</div>
<div class="console_widget" data-snippet="snippets/1398.console"></div>
<p>An example of a transient update:</p>
<div class="pre_wrapper lang-console">
<pre class="programlisting prettyprint lang-console">PUT /_cluster/settings?flat_settings=true
{
    "transient" : {
        "indices.recovery.max_bytes_per_sec" : "20mb"
    }
}</pre>
</div>
<div class="console_widget" data-snippet="snippets/1399.console"></div>
<p>The response to an update returns the changed setting, as in this response to
the transient example:</p>
<div class="pre_wrapper lang-console-result">
<pre class="programlisting prettyprint lang-console-result">{
    ...
    "persistent" : { },
    "transient" : {
        "indices.recovery.max_bytes_per_sec" : "20mb"
    }
}</pre>
</div>
<p>This example resets a setting:</p>
<div class="pre_wrapper lang-console">
<pre class="programlisting prettyprint lang-console">PUT /_cluster/settings
{
    "transient" : {
        "indices.recovery.max_bytes_per_sec" : null
    }
}</pre>
</div>
<div class="console_widget" data-snippet="snippets/1400.console"></div>
<p>The response does not include settings that have been reset:</p>
<div class="pre_wrapper lang-console-result">
<pre class="programlisting prettyprint lang-console-result">{
    ...
    "persistent" : {},
    "transient" : {}
}</pre>
</div>
<p>You can also reset settings using wildcards. For example, to reset
all dynamic <code class="literal">indices.recovery</code> settings:</p>
<div class="pre_wrapper lang-console">
<pre class="programlisting prettyprint lang-console">PUT /_cluster/settings
{
    "transient" : {
        "indices.recovery.*" : null
    }
}</pre>
</div>
<div class="console_widget" data-snippet="snippets/1401.console"></div>
</div>

</div>
<div class="navfooter">
<span class="prev">
<a href="cluster-stats.html">« Cluster stats API</a>
</span>
<span class="next">
<a href="cluster-nodes-usage.html">Nodes feature usage API »</a>
</span>
</div>
</div>

                  <!-- end body -->
                        </div>
                        <div class="col-xs-12 col-sm-4 col-md-4" id="right_col">
                        
                        </div>
                    </div>
                </div>
            </section>
        </div>
    </section>
</div>
<script src="../static/cn.js"></script>
</body>
</html>